home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Mac Game Programming Gurus / TricksOfTheMacGameProgrammingGurus.iso / CodeWarrior Lite / Metrowerks C⁄C++ Lite / Headers / Universal Headers 2.0.1f / DiskInit.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-03-22  |  2.9 KB  |  98 lines  |  [TEXT/MMCC]

  1. /*
  2.      File:        DiskInit.h
  3.  
  4.      Contains:    Disk Initialization Package ('PACK' 2) Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Package:    Universal Interfaces 2.0 in “MPW Latest” on ETO #17
  8.  
  9.      Copyright:    © 1984-1995 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13.                  stack.  Include the file and version information (from above)
  14.                  in the problem description and send to:
  15.                      Internet:    apple.bugs@applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. */
  19.  
  20. #ifndef __DISKINIT__
  21. #define __DISKINIT__
  22.  
  23.  
  24. #ifndef __TYPES__
  25. #include <Types.h>
  26. #endif
  27. /*    #include <ConditionalMacros.h>                                */
  28.  
  29. #ifdef __cplusplus
  30. extern "C" {
  31. #endif
  32.  
  33. #if PRAGMA_ALIGN_SUPPORTED
  34. #pragma options align=mac68k
  35. #endif
  36.  
  37. #if PRAGMA_IMPORT_SUPPORTED
  38. #pragma import on
  39. #endif
  40.  
  41. struct HFSDefaults {
  42.     char                            sigWord[2];                    /* signature word */
  43.     long                            abSize;                        /* allocation block size in bytes */
  44.     long                            clpSize;                    /* clump size in bytes */
  45.     long                            nxFreeFN;                    /* next free file number */
  46.     long                            btClpSize;                    /* B-Tree clump size in bytes */
  47.     short                            rsrv1;                        /* reserved */
  48.     short                            rsrv2;                        /* reserved */
  49.     short                            rsrv3;                        /* reserved */
  50. };
  51. typedef struct HFSDefaults HFSDefaults;
  52.  
  53. #if SystemSevenOrLater
  54. extern pascal void DILoad(void)
  55.  THREEWORDINLINE(0x7002, 0x3F00, 0xA9E9);
  56. extern pascal void DIUnload(void)
  57.  THREEWORDINLINE(0x7004, 0x3F00, 0xA9E9);
  58. extern pascal short DIBadMount(Point where, long evtMessage)
  59.  THREEWORDINLINE(0x7000, 0x3F00, 0xA9E9);
  60. extern pascal OSErr DIFormat(short drvNum)
  61.  THREEWORDINLINE(0x7006, 0x3F00, 0xA9E9);
  62. extern pascal OSErr DIVerify(short drvNum)
  63.  THREEWORDINLINE(0x7008, 0x3F00, 0xA9E9);
  64. extern pascal OSErr DIZero(short drvNum, ConstStr255Param volName)
  65.  THREEWORDINLINE(0x700A, 0x3F00, 0xA9E9);
  66. extern pascal OSErr DIXFormat(short drvNum, Boolean fmtFlag, unsigned long fmtArg, unsigned long *actSize)
  67.  THREEWORDINLINE(0x700C, 0x3F00, 0xA9E9);
  68. extern pascal OSErr DIXZero(short drvNum, ConstStr255Param volName, short fsid, short mediaStatus, short volTypeSelector, unsigned long volSize, void *extendedInfoPtr)
  69.  THREEWORDINLINE(0x700E, 0x3F00, 0xA9E9);
  70. extern pascal OSErr DIReformat(short drvNum, short fsid, ConstStr255Param volName, ConstStr255Param msgText)
  71.  THREEWORDINLINE(0x7010, 0x3F00, 0xA9E9);
  72. #else
  73. extern pascal void DILoad(void);
  74. extern pascal void DIUnload(void);
  75. extern pascal short DIBadMount(Point where, long evtMessage);
  76. extern pascal OSErr DIFormat(short drvNum);
  77. extern pascal OSErr DIVerify(short drvNum);
  78. extern pascal OSErr DIZero(short drvNum, ConstStr255Param volName);
  79. #endif
  80. #if CGLUESUPPORTED
  81. extern OSErr dibadmount(Point *where, long evtMessage);
  82. extern OSErr dizero(short drvnum, const char *volName);
  83. #endif
  84.  
  85. #if PRAGMA_IMPORT_SUPPORTED
  86. #pragma import off
  87. #endif
  88.  
  89. #if PRAGMA_ALIGN_SUPPORTED
  90. #pragma options align=reset
  91. #endif
  92.  
  93. #ifdef __cplusplus
  94. }
  95. #endif
  96.  
  97. #endif /* __DISKINIT__ */
  98.